The ability of people to effectively and efficiently share ideas, i.e., collaborate, is at the core of team productivity. The advent of the computer and information networks facilitates collaboration over long distances and between large groups of people. Collaboration in a complex manufacturing process is particularly important, since large numbers of people are involved in the manufacture of an item or product assembly, and small errors in product specification development can result in financial loss to the manufacturer, time spent in rework, and possible harm to human life.
Because of the large costs associated with errors, the manufacturing industry has always used elaborate processes for the creation, revision, management, and deployment of manufacturing specifications. The construction of large, labor-intensive projects, and more recently, small, high volume manufacturing, typically consists of multiple cycles of review and approval. Once approved for production, a design must be kept current, and revision control must be maintained to ensure that the correct part, from the appropriate drawing, is manufactured every time. Even with the right system in place, effective communication is time critical. For example, delivering a new specification to the manufacturing plant a day late can cost millions of dollars in scrap and rework.
An important goal of any manufacturing process is to reduce and eliminate human error in design and production. There are many opportunities for error since the design specification passes through many hands during the design phase. Unfortunately, there have been few beneficial critical changes in connection with the approval and review process, apart from the technology used to convey the information from one party to another. Historically, paper and written documentation represented the first major step in conveying complex ideas among people. A review and approval bureaucracy introduced responsibility and accountability into the process. The next significant step was the introduction of configuration management, in which changes to specifications are recorded, saved, and each version of a document is given a new revision identifier.
The basic elements described above have remained the state-of-the-art for many years. Recently, improvements in technology have served three purposes in the area of collaboration: to reduce the time between communications over long distance, enable more people to participate in the communications, and improve the accuracy of the communications.
Most collaboration systems are self-contained within a network. In other words, the collaboration system is used to send email, pictures, voice, or other media over the network. Since the system is self-contained, it has broad use but can be difficult to incorporate into existing processes. One example is using email to discuss revisions to a document. The participants in the collaboration must reference the document (usually contained in a separate system or file), then refer to the email, reply to the email, and await a response from the other collaborators.
Certain advances have been made wherein the collaborative content (in this case, a document) could be “attached” to the email, enabling collaborators to refer to a modified document embedded in the collaboration message. However, even this arrangement involves two applications: one for messaging and one for editing and viewing the collaborative content. When using email attachments to send documents, the entire collaborative content is delivered with the message.
The Internet provides an approach (using Hypertext Markup Language (HTML) documents and the Hypertext Transport Protocol (HTTP)) for sharing documents among multiple recipients over long distances, facilitated by the use of Uniform Resource Locators (URLs) which allow collaborators to reference a common document. Since the content of the Internet is not directly modifiable by a client, any changes need to be accomplished by directly modifying the content and re-posting the document on the server.
In order to effectively collaborate over long distances, a collaboration system must satisfy two objectives: first, a way must be found for collaborators to view the same collaborative content, regardless of their location; and second, a way must be provided to communicate opinions, changes, and illustrate points of interest in connection with the collaborative content. Ideally, this system should not require installation of custom software to accomplish these tasks because the installation of extra software introduces problems with licensing, portability, and availability to all collaboration participants.
A number of approaches have been developed to accomplish these objectives.
According to one collaborative approach, most modem documentation is generated, edited, and stored using electronic means. In a typical case, the document author creates a document using a generation tool, such as a computer-aided design (CAD) program or word processor. Once generated, the document is stored in the “native” format of the generation tool on persistent media (magnetic media, optical media, punched cards, or other). Changes to the document involve editing the native file using the generation tool. If someone other than the author intends to modify the document, that person will need a copy of the document file and software capable of modifying the file (usually the generation tool). Coordinating changes between copies of the document requires configuration management (CM) tools and procedures.
The overhead support involved in generating, editing, storing, and controlling large numbers of these documents is large. The software used for creating drawings (CAD systems) is very expensive and difficult to learn. The CM tools require constant supervision and strict processes to work correctly. The act of sending a document from one reviewer to another can involve long delays and loss of control of the original document.
The most popular collaboration solution, i.e., email and attachments, has several disadvantages. When sending collaborative content to another collaborator, the entire source of the content must be sent as well. This creates a much larger message size, and can impose a burden on collaborators with low-bandwidth connections. This solution also presents problems with security, since many holders of intellectual property do not want full copies of that property sent to collaborators outside their security perimeter, especially over a low-security medium, such as email. Lastly, in order to view and edit the collaborative content, all collaborators must have access to an application that views and edits that content. This is impractical for client workstations with small computing power (such as PDAs or Cell Phones), or for the collaborator that does not wish to purchase a license for potentially expensive software.
The use of internet hosting of files and an Internet Browser (free of plug-ins or other native code installations) solve the accessibility problems, but does not allow the collaborators to make annotations (collaborative elements) with respect to the collaborative content, or share these annotations with other collaborators. For example, even if hundreds of collaborators can view an HTML document referenced by a URL, none of these collaborators have the ability to mark up the page for the others to see. While it is possible to create an application that could accomplish this objective, an installable (and/or licensable) application presents some of the same problems as the email with attachments solution described above.
As described above, there is a need in the collaboration industry to allow collaboration between networked computer users without requiring a dedicated collaboration application on the user's computer system. There is a further need to allow the annotation of internet web pages without altering the original page or requiring a dedicated collaboration application on the user's computer system.
Further still, it would be useful to allow the rendering of the collaborative content without requiring a dedicated collaboration application on the user's computer system. Additionally, there is a need to allow the rendering of the collaborative content exactly as it appeared during annotation of the content, or at the very least, substantially as it appeared during annotation of the content.
A further need is to provide for the transmission of the collaborative content and the subject drawing by exchanging the URL of the content, and rendering instructions as part of that URL.